#ifndef POSTPROCESSOR_H
#define POSTPROCESSOR_H

#include <map>
#include <vector>
#include "funcao.h"
#include "mesh.h"
#include "visualizationoptions.h"
using namespace std;

class PostProcessor
{

public:
  PostProcessor();
  ~PostProcessor();
  void metodoNos( Mesh* _pMesh);
  void metodoElemento( Mesh* _pMesh);
  void metodoAresta( Mesh* _pMesh);
  void metodoVolume(Mesh* _pMesh);
  void valorno(map< int, vector<double> > _nodes);
  


private:
  
  double valor(double x,double y);
  double  fazmedia(double valor_no1, double valor_no2, double valor_no3, double valor_no4);
  double valormax(double s);
  double valormin(double p);
  double no_max(std::map< int, std::vector<double> > _nodes);
  double no_min(std::map< int, std::vector<double> > _nodes);
  double valor_max;
  double valor_min;
  std::map< int, std::vector<double> >  valor_no;
  Mesh* m_pMesh;
  //VisualizationOptions* v_options;
 

};

#endif 